"""
def func():
    for i in range(1, 2001):
        yield i


ret = func()    # 生成器对象可以有多个，用变量来保持生成器的唯一
print(func())   # 如不赋值每一次print都会重新构造一个新的生成器
print(func())
print(next(ret))
print(next(ret))

"""

"""
return 结束函数
yield 不结束函数 给对应的next返回值，一个yield对应一个next，节省内存
yield form 可迭代对象
"""
"""
def func():
    lst = [1, 2, 3]
    yield from lst
a = func()
print(next(a))
print(next(a))
print(next(a))
"""
